Publishing of learning applications in a modular learning system

ABSTRACT

A modular learning system is provided for publishing new and updated learning applications to users of the modular learning system. The learning application authors are validated by the modular learning system as credentialed learning application authors. The learning application authors are optionally granted access to use a content editing interface and revise information using a template provided by a template user. The resulting learning application may be translated and certified and requested for publication. After publication, update requests may be provided to the authoring user to remind the author to review and revise the learning application.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a U.S. National Stage of International Application No. PCT/US2012/054956, filed Sep. 13, 2012, which claims the benefit of Indian Provisional Specification No. 2573/MUM/2011, titled “Publishing of Learning Applications in a Modular Learning System” filed on Sep. 13, 2011, both of which are incorporated by reference herein in their entireties.

FIELD OF THE ART

The present disclosure relates generally to modular learning systems and more particularly to publishing of microlearning applications in a modular learning system.

DESCRIPTION OF THE RELATED ART

The current education environment includes members like students or learners, teachers, tutors, coaches, guides, professors or lecturers, content authors, and organizational members like preschools, schools, colleges, universities, educational boards and professional standards authorities, admission testing authorities, placement organizations, recruiters, HR departments of organizations, educational content and media publishers and local, regional, and national governments. All the above maintain some form of transactional and functional relationships with each other. Conventionally, a large number of educational content authors or editors publish books, software and other educational media content and update the same at predetermined intervals of time in coordination with their corresponding educational content publishers.

Recently, a considerable number of such educational authors manage educational knowledge resources by making them available, and, optionally, updated or edited collaboratively in the form of wikis, blogs or other static or hypermedia repositories of educational content on the World Wide Web. In some cases, the internal knowledge management of a particular organization may also be managed, edited and updated in the above formats and corresponding interfaces by the human resources or training department of each such organization, for restricted access by particular employees or kinds of employees of the said organization. Various kinds of publishing software tools and corresponding interfaces like wiki management software, desktop publishing software, and in some cases, even programming software may be utilized by the creators or editors of such educational content, media and, optionally, hypermedia. In some cases, such physical or digital units of educational content or media are sold or rented by such authors or their corresponding publishers to students, tutoring individuals like teachers, tutors, coaches, guides, professors or lecturers or even educational institutions or training organizations like preschools, schools, colleges, universities, recruiters or HR departments of organizations in addition to digital and physical libraries, through various digital and physical sales channels. In some cases, the publishers of such corresponding authors may manage the translation or certification of educational content of the said author's book or unit of educational content through in-house resources.

Learning system providers may find it difficult to manage the publishing, updation or sale of educational content in traditional educational content media like a book, chapter, conventional software application, e-textbook or such educational media, since educational content in the learning system may instead be offered in a smaller and differently comprised medium.

BRIEF DESCRIPTION OF DRAWINGS

The disclosed embodiments have other advantages and features which will be more readily apparent from the detailed description, the appended claims, and the accompanying figures (or drawings). A brief introduction of the figures is below.

FIG. 1 is a modular learning environment including a modular learning system 144 according to one embodiment.

FIG. 2 is a block diagram of a modular learning system according to one embodiment.

FIG. 3A is a block diagram of the metadata of a learning application according to one embodiment.

FIG. 3B is a block diagram of the metadata of a learning application according to an alternative embodiment.

FIG. 4 is a block diagram of a learning application publishing management module according to one embodiment.

FIG. 5 is a flow diagram of a method for publishing of a new learning application in a modular learning system according to one embodiment.

FIG. 6 is illustrates modules of an example machine able to read instructions from a machine-readable medium and execute them in a processor (or controller) according to one embodiment.

SUMMARY OF THE INVENTION

The present invention specifically relates to the field of publishing of microlearning applications in the modular learning system 144. The invention provides a mechanism by which new, updated, authentic and revised learning applications can be provided to learning users by authorized authoring users.

The learning application authoring request made by the authoring users is validated and this is followed by \granting access to the content editing interface generated by the interface generator. In case translation or certification is necessary, the learning application authored by the authoring user is translated by translating users or certified by certifying users, before initiating publication of the authored learning application,

These applications are published only after the price quoted by the authoring user and other criterions are in compliance with the rules set by the modular learning system. After publication, update requests may be provided to the authoring user to remind the author to review and revise the learning application.

DETAILED DESCRIPTION

The Figures (FIGS.) and the following description relate to preferred by way of illustration only. It should be noted that from the following discussion, alternative embodiments of the systems, methods, figures, diagrams and interfaces disclosed herein will be readily recognized as viable alternatives that may be employed without departing from the principles of what is claimed.

Reference will now be made in detail to several embodiments, examples of which are illustrated in the accompanying figures. It is noted that wherever practicable similar or like reference numbers may be used in the figures and may indicate similar or like functionality. The figures depict embodiments of the disclosed system (or method) for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the systems, methods, figures, diagrams and interfaces illustrated herein may be employed without departing from the principles described herein. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments. It will be evident, however to one skilled in the art that the various embodiments may be practiced without these specific details.

Configuration Overview

A system and method for the publishing of a new learning application in a modular learning system environment is provided. The invention further relates to publishing of learning applications in a modular learning system 144. A learning application publishing management module in the modular learning system may comprise a plurality of modules and generators like a learning application database module, a learning application metadata module, a learning application template library database module, a collaboration module, a dynamic updation module, a review module, a citation module, a learning application purchase analytics module, a learning application performance analytics module, an authentication module, a learning application storage module, a pricing terms module, an edition manager and a content editing interface generator. A method for publishing of a new learning application in a modular learning system environment may comprise a plurality of steps like receiving a learning application authoring request from a learning application authoring user, validating authoring user credentials, granting access to a content editing interface, processing transaction and granting access to the requested template in a learning application editing interface in some embodiments, storing learning application content metadata received from the learning application authoring user and the learning application conforming to the learning application template, updating language and certification metadata of the learning application in some embodiments, receiving a publishing request from the learning application authoring user, receiving pricing terms from the learning application authoring user, determining an approval status from the modular learning system provider and publishing the new/updated edition of the learning application to a learning user marketplace or a plurality of learning user libraries on the modular learning system. Hence, the learning application includes additional metadata and the approval status is determined based in part on consistency between the content metadata and the additional metadata. The learning application conforms to the learning application template and content metadata describing the parameters for performance of the learning application.

FIG. 1 is a modular learning environment 100 including a modular learning system 144 according to one embodiment. Modular learning system 144 operates in modular learning environment 100 and communicates with a plurality of user devices 140 over a network 142. The user devices 140 are operated by a plurality of kinds of users in the learning environment. The user devices 140 may comprise any of a variety of computing devices, such as a desktop computer, a laptop, a mobile device, a tablet computer, a set-top box, a kiosk, interactive television, gaming console, and other computing platforms suitable for communicating with modular learning system 144. The modular learning system 144 provides a system for managing curricula, learning facilities, standardized tests, learning applications, tutors, and other modules of a learning experience in micro increments of time and money. The modular learning system 144 enables the various users to communicate with other users in a learning environment and provide services to learning user 102. The network 142 includes a wireless area network, a local area network, a General Packet Radio Service (GPRS) network, an Enhanced Data for Global Evolution (EDGE) network and the like. The user devices 140 are connected to the modular learning system 144 via the network 142.

Modular learning system 144 allows a learning user 102 to manage the purchase and performance of each module of a single microlearning service stack for a learning application (e.g., Breaststroke) or a group of learning applications (e.g., Breaststroke, Freestyle, Butterfly and Swimming Safety). Tutor access, such as access to a swimming instructor may be purchased in various increments, such as in hours. Learning content applications such as a breaststroke application with attached instructional media and other data may be purchased in timed access quantities or may be permanently purchased. Learning facility access such as an Olympic Sized Swimming Pool may be purchased in increments of hours or learning application performances such as ten laps. Learning tools or materials such as Swimming Goggles may be purchased as well. Each of these modules may be separately purchased and interacted with through an interface displayed on user device 140. In case of a learning performance which can be completed on the user device 140 itself, the application content is not only purchased and managed, but also performed, through an interface displayed on the user device 140. A learning user 102 may manage the purchase and performance of groups of microlearning performances in the form of learning visits and learning workshops, through an interface displayed on user device 140. Learning user 102 may manage an individual learning identity (or learning profile) and offer details of microlearning application performances completed by him, as well as the personal learning metrics, scores, and reviews. This learning identity may be provided to recruiting users for the purpose of placement.

The modular learning system 144 manages, regulates and supervises the purchase, sale, preview, performance and review of a plurality of microlearning applications, each comprised modularly of a tutoring service, a learning application, learning facility access, and/or learning tools or infrastructure access, a learning visit, and/or a workshop as described in further detail below. The modular learning system 144 manages transactional and functional relationships between users of the modular learning system 144. These various users interact with the modular learning system 144 to modify learning applications and provide learning services as described below.

The modular learning system 144 may enable various other users including but not limited to tutors, authors, tool/material suppliers learning application template developers, translators, certifying user, learning facility administrators, learning event organizers, recruiters, and funders to modularly manage at least one of micro tutoring services associated with specific learning applications, microlearning content applications, microlearning application templates, translation of microlearning content applications, certification of microlearning content applications, access to learning facilities, access to learning workshops, organization of learning visits associated with specific learning applications, supply of tools, aids and/or materials, recruitment services, as well as granular funding services.

The modular learning system 144 enables a tutoring user 112 to provide micro tutoring services to learning user 102. Tutoring user 112 are typically individuals with credentials or other knowledge in the area of learning applications. The tutoring user 112 may associate themselves with particular pieces of content and may indicate qualifications to teach each learning application, as is described further below. The modular learning system 144 manages the sale of micro tutoring services and associated tutoring user 112 with specific learning applications to learning user 102. Tutoring user 112 assist the learning user 102 with learning the subject matter of the learning application. As such, the modular learning system 144 facilitates the meeting and communication of tutors and learners. Tutoring user 112 may also provide learning performance data to the modular learning system 144. The learning performance data may indicate, for example, the level of the learner's mastery or proficiency through scoring or other metrics for reviewing performance at a learning performance task. The tutoring user 112 provides input to the modular learning system 144 using a plurality of learning applications through an interface displayed on the tutoring user's 112 user device 140.

The modular learning system 144 enables a learning application authoring user 104 to manage the drafting, editing, testing, publishing, sale and updates of learning content in applications through an interface displayed on user device 140. That is, the learning application authoring user 104 author's individual pieces of learning content which may be purchased and used by a learning user. For example, a learning application authoring user 104 may create instructional content for learning the backstroke. The instructional content may comprise instructions and multimedia, as well as directions for the learning user 102 to practice aspects of the backstroke in a suitable pool. The learning application authoring user 104 may use a pre-existing application template to create the learning application.

The modular learning system 144 enables a learning application template developing user 110 to create learning templates for use in creating learning applications. The learning application templates provide a framework for creating various types of learning applications. For example, learning application templates may comprise a quiz, simulation, role play, experiment, multimedia material, and other types of learning frameworks. The learning application template developing user 110 may manage the development, testing and sale of the learning application templates to learning application authoring users 104 through an interface displayed on a user device 140.

The modular learning system 144 enables a learning application translating user 106 to manage the translation and translation updates of learning content in applications and sale of such services to microlearning content application authors through an interface displayed on a user device 140. The translations are provided to the modular learning system 144 and may be stored with the corresponding learning application to enable providing instructions to learning users 102 in a variety of languages.

The modular learning system 144 enables a learning application certifying user 108 to certify various learning applications according to standards applied by the certifying user 108. Such certifying users may include boards of education at various levels, universities, professional standards groups, and other certification authorities. Certifying users 108 may or may not be formal institutions. For example, a certifying user may include a company establishing a set of learning applications to prepare a candidate for a job with the company. The certifying user 108 manages the certification of each learning content application as a part of their respective curricula or syllabi and manages the sale of such certification services to learning content application authoring users, through an interface displayed on user device 140.

The learning facility 132 facilitates the performance of specific learning applications available on the modular learning system 144. Learning facilities 132 may comprise any location suitable for performing types of learning applications. For example, learning facilities 132 may comprise an athletic club, a chemistry lab, a science lab, a university, a library, or a tutor's home. In some embodiments, the modular learning system 144 enables a facility administering user 124 to determine the compatibility of various learning applications which can be performed within learning facility 132 by picking the learning infrastructure available in the learning facility and associating the learning facility 132 with each learning application (e.g., Breaststroke) compatible with the learning infrastructure (e.g., Olympic sized Swimming Pool). In one embodiment, rather than expressly associating the learning facility with individual learning applications, the learning facility administering user 124 indicates to the modular learning system 144 the specific infrastructures and amenities available at the learning facility 132. In this embodiment, the modular learning system 144 enables a learning user 102 or learning application authoring user 104 to identify a learning facility 132 which is compatible with the learning application based on the infrastructure available at the learning facility 132. The modular learning system 144 may also identify compatible learning facilities based on metadata associated with the learning application and the infrastructure indicated by the learning facility administering user 124.

The learning facilities 132 may comprise a variety of types of learning facilities, such as an independent learning facility, institutional learning facility, workplace learning facility, and temporary learning facility. The modular learning system 144 enables an administrator 124 of an independent learning facility owned, managed or franchised by the modular learning system 144 to manage the sale of learning facility access for performances of specific microlearning applications as well as sale of learning tools and materials (e.g., sulphuric acid or swimming goggles) or access to the same in micro increments of time and money ($six/hour or $five/learning application performance) depending on multiple factors like the learning infrastructure to be accessed (e.g., Swimming Pool, Computers, Chemistry Lab), number of hours of access, and the like, through an interface displayed on a user device 140.

The modular learning system 144 enables an administrator 124 of an institutional learning facility like a preschool, school, college or university (e.g., Bangalore University) associated, partnered or linked with the modular learning system 144 to, in addition to managing the sale associated with the independent learning facility (e.g., learning facility access for performances of specific microlearning applications), manage the learning performances of a plurality of learners (students or outsiders) across a plurality of learning applications available on the system (with the learning user's explicit consent), optionally delegated to a plurality of teachers, professors, lecturers or coaches registered as tutoring users 112 on the modular learning system 144, through an interface displayed on a user device 140.

The modular learning system 144 enables an administrator 124 of a workspace learning facility associated, partnered or linked with the modular learning system 144 to, in addition to managing the sale associated with the independent learning facility (e.g., learning facility access for performances of specific microlearning applications), manage the learning performances of a plurality of learners (employees) across a plurality of learning applications available on the system (with the learning user's explicit consent), optionally delegated to a plurality of Human Resource Managers, Trainers and/or immediate superiors, registered as tutoring users 112 on the modular learning system, through an interface displayed on a user device 140.

The modular learning system 144 enables an administrator 124 of a temporary learning facility (e.g., a Cricket Ground available for net practice on Saturdays and Sundays from six in the morning to twelve at midnight) to, in addition to managing the sale associated with the independent learning facility (e.g., learning facility access for performances of specific microlearning applications), manage the hours of accessibility to the designated learning facility, through an interface displayed on a user device 140. In addition to managing the sale and performance of microlearning applications, an administrator of an independent, institutional, workspace, or temporary learning facility may manage the modular purchase of learning infrastructure (e.g., chemistry equipment, computers, cricket stumps) as well as learning tools, aids and materials (e.g., sulphuric acid, swimming goggles, cricket bat) from the modular learning system provider or a third party, topic wise, subject wise, location wise or otherwise based on the learning applications intended to be offered in the designated learning facility, through an interface displayed on a user device 140.

The modular learning system 144 enables a learning visit organizing user 114 to manage the organization of learning visits, and the sale of learning visits to learning users 102. The learning visit organizing user 114 may also associate a learning visit with compatible microlearning applications. Such learning visits may comprise, for example, a visit to a factory or industrial area, a museum, or a trip to a city. The learning visit organizing user 114 may associate the learning visit with learning applications and manage the learning performances if necessary during the learning visits. The management of performances of associated learning applications may be optionally provided by tutoring users 112. The learning visit organizing user 114 communicates with the modular learning system 144 through an interface displayed on a user device 140.

The modular learning system 144 enables a learning workshop organizing user 116 to manage the organization of workshops available to learning users 102. A workshop comprises a plurality of specific microlearning applications to be performed in the workshop, and a sequence of the microlearning applications to be performed at the workshop. The workshop may also specify learning tools, a designated learning facility, and a tutoring user or tutoring users to perform the workshop. As such, the workshop user organizes performance and modules of learning applications to be performed together with a group of learning users 102. The learning workshop organizing users 116 also manage the sale of such microlearning workshop access and manage the learning performances for a plurality of learners. The learning workshop organizing users communicate with the modular learning system 144 through an interface displayed on a user device 140.

The modular learning system 144 enables a learning tools supplying user 118 to provide learning tools and materials such as chemicals, biology samples, computer software, and other materials for use in conjunction with learning applications to learning users 102. The learning tools supplying user 118 manages the organization and sale of the learning tools and materials (or optionally, access to the same) to learning users and administrators of learning facilities 132. The learning tools supplying user 118 may also associate learning tools with particular learning applications stored on modular learning system 144. Alternatively, the learning tools supplying user 118 may designate the tools available and the modular learning system 144 may determine which learning applications may require the tools provided by the learning tools supplying user 118. The learning tools supplying user communicates with the modular learning system 144 through an interface displayed on a user device 140.

The modular learning system 144 enables a recruiter 120 of learning users 102 to manage the recruitment of learning users 102 through the modular learning system 144. The recruiter 120 may view and filter learning users 102 by specific learning applications performed on the system, scores, metrics and reviews generated in relation to the learning applications performed by learning users 102. The recruiter may access and filter learning users 102 based on demographic data like the language used in performing the learning application. Recruiting user 120 may also operate as a certifying user 108 to certify particular learning applications that may be desirable to the recruiting user 120. The recruiting user may use the certified application as a filter prior to considering learning users for a position. The recruiting user 120 manages recruiting access to the modular learning system 144 through an interface displayed on a user device 140.

The modular learning system 144 enables a funding user 122 of learning users 102 to provide funding and scholarship funds and other support to learning users 102. Such funding users 122 may comprise a parent, sibling, friend, spouse, relative, university, employer, or scholarship/grant offering institution. The funds may be provided for the funding of specific learning users or of specific learning applications, or of specific microlearning goods and services associated with the specific learning applications, in small increments, through an interface displayed on a user device 140.

Although the modular learning environment 100 is described as being composed of various, user devices (e.g., personal computer), a network (e.g., internet, intranet, world wide web), learning facilities (e.g., an Independent Learning Facility, an Institutional Learning Facility), it would be appreciated by one skilled in the art that fewer or more kinds of users (e.g., a Learning Application Fact Checking User, a Web Based Offsite Tutoring User), user devices (e.g., a mobile phone device, a portable gaming console device, a tablet device, a learning console device, gaming console device or server device attached to a television or other screen), networks (e.g., an intranet at a preschool, school, college, university, educational board, professional standards authority, coaching/tuition class; a social or professional network; an intranet at a company, HR department, training department and at a training organization) and learning facilities may comprise the modular learning environment 100, with the present disclosure still falling within the scope of various embodiments.

FIG. 2 is a block diagram of a modular learning system 144 according to one embodiment. The modular learning system 144 includes a variety of databases and modules for providing learning applications and learning services to users of the modular learning system 144. The modular learning system 144 maintains learning applications in a learning application database 204. The learning applications are sold to users along with microlearning services using the purchase management module 238. Performance of learning applications is enabled by performance management module 240. Additional modules of the modular learning system 144 are described below.

The learning user database 202 is configured for receiving, storing, retrieving and updating a plurality of data fields of each subset of learning users scheduled to attend the microlearning event from the larger plurality of learning users in database 202 of the modular learning system 144.

A user database 202 is further configured for receiving, storing, updating and retrieving a plurality of data fields of each user, such as the user's name, address, and contact details. Depending on the user's role in the modular learning system 144, the user database 202 maintains additional information on the user. For example, for a learning user 102, the user database 202 maintains learning history outside the modular learning system 144, learning application performance history on the modular learning system 144, purchase history of learning applications as well as purchase history of a host of related microlearning purchase items like, for example, timed access to a learning facility 132, timed access to a tutor 112, or and purchase of access to a learning tool from learning tools database 232. In some embodiments, the data fields are used to determine purchase compatibility using purchase management module 238 and to determine performance compatibility using performance management module 240.

The user database 202 may maintain information about each type of user based on the user's role in the system. The user information may be stored in a plurality of databases, each database associated with a user role, or the user roles may be stored in a single user database 202. For example, the additional user roles include learning application authoring users, learning facility administering users, learning visit organizing users, and other types of users of the modular learning system 144.

In one embodiment, a distinct Learning User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning user 102, comprising the learning user's name, address, contact details as well as learning related data fields like learning history outside the modular learning system 144, learning application performance history on the modular learning system 144, purchase history of learning applications as well as purchase history of a host of related microlearning purchase items like, for example, access to learning facility 132, access to tutor 112, and purchase of access to a learning tool. In one embodiment, a distinct Learning Application Authoring User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning application authoring user, say, user 104. In one embodiment, a distinct Independent Learning Facility Administering User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each independent learning facility administering user, say, user 124. In one embodiment, a distinct Learning Tools Supplying User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning tools supplying user, say, user 118. In one embodiment, a distinct Learning Visit Organizing User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning visit organizing user 114. In one embodiment, a distinct Learning Application Translating User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning application translating user, say, user 106. In one embodiment, a distinct Learning Application Certifying User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning application certifying user, say, user 108. In one embodiment, a distinct Learning Application Template Developing User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning application template developing user, say, user 110. In one embodiment, a distinct Learning Workshop Organizing User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning workshop organizing user, say, user 116. In one embodiment, a distinct Recruiting User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each recruiting user, say, recruiting user 120. In one embodiment, a distinct Funding User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each funding user, say, funding user 122.

In one embodiment, a distinct Institutional Learning Facility Administering User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each, institutional learning facility administering user, say, user 124. In one embodiment, a distinct Workspace Learning Facility Administering User Database is used to is configured for receiving, storing, updating and retrieving a plurality of data fields of each workspace learning facility administering user, say, user 124. In one embodiment, a distinct Temporary Learning Facility Administering User Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each temporary learning facility administering user, say, user 124. In one embodiment, a distinct Learning Facility Database is configured for receiving, storing, updating and retrieving a plurality of data fields of a plurality of kinds of learning facilities, say, facility 132, as received from a plurality of kinds of learning facility administering users, say, user 124. In one embodiment, a distinct Learning Visits Database is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning visit from the respective learning visit organizing user, say user 114. In some embodiments, the data fields of the databases in the above embodiments are used to determine purchase compatibility using purchase management module 238 and to determine performance compatibility using performance management module 240.

The learning application database 204 is configured for receiving, storing, updating and retrieving all the learning application metadata of all learning applications whose performance is managed through the module 238. Optionally, all purchase related metadata of the learning application, like number of copies accessed per day, segmented by location, language, learning facility, user device, as well as other learning related purchase analytics metadata that may be generated during the purchase process may be received, stored, and updated by the microlearning purchase management module in the learning application database 204. The learning application database 204 may also store identifier items for each learning application on the modular learning system 144.

In one embodiment, the database 204 is configured for receiving, storing, updating and retrieving all the learning application metadata of all learning applications whose performance is managed through the module 240. Optionally, all performance related metadata of the learning application, like number of copies performed per day, segmented by location, language, learning facility, user device, as well as other learning related performance analytics metadata that may be generated during the performance process may be received, stored, and updated by the microlearning performance management module in the learning application database 204.

A subject database 206 is configured for receiving, storing, updating and retrieving a plurality of data fields of each subject linked or tagged to each learning application 300 in Subject Metadata 312. The subject database 206 provides a categorization system for the learning applications and enables learning application authoring users, like user 104, to categorize learning applications as belonging to one or more subjects by associating them with one or more subjects, such subjects are then stored in subject metadata 312 of each authored learning application 300. The subject database 206 also allows users to search for learning applications according to particular subjects using the subjects associated with the learning applications. For example, a tutoring user 112 with a mathematics specialty may search the learning applications using the subject database 206 to identify mathematics learning applications for the tutor to associate his services with.

A tutor database 208 is configured for receiving, storing, updating and retrieving a plurality of data fields of each tutoring user, comprising the tutoring user's name, address, contact details, as well as learning related data fields like learning users to whom microlearning services have or are being provided, performance data and performance review data for the tutoring services, tutoring history outside the modular learning system 144, and remittance history. In some embodiments, the data fields are used to determine purchase compatibility using purchase management module 238 and to determine performance compatibility using performance management module 240.

A learning facility database 230 is configured for receiving, storing, updating and retrieving a plurality of data fields of a plurality of kinds of learning facilities such as learning facility 132 as received from learning facility administering users 124. In some embodiments, the data fields are used to determine purchase compatibility using purchase management module 238 and to determine performance compatibility using performance management module 240.

A learning tools database 232 is configured for receiving, storing, updating and retrieving a plurality of data fields of each learning tool or material from each learning tools supplying user 118. In some embodiments, the data fields are used to determine purchase compatibility using purchase management module 238 and to determine performance compatibility using performance management module 240.

Each of these databases, such as the tutor database 208, facilities database 230, and learning tools database 232, may also include information relating to purchase and performance compatibility. For example, a tutor in the tutor database may specify the tutor is only willing to teach students aged thirty to forty, or a learning facility may indicate it is only willing to allow entry to learning users who are a member of the facility.

A purchase management module 238 is configured for managing the purchase of learning applications and associated application services as a microlearning stack by the learning user 102.

A performance management module 240 is configured for managing the performance of learning applications and associated application services as a microlearning stack by the learning user 102.

A publishing management module 242 is configured for managing the publication of learning applications and associated application services as a microlearning stack by the learning user 102. The publishing management module 242 manages learning application creation interfaces for the user and allows users to place new applications on the modular learning system 144.

In one embodiment, the tutor database, learning facilities database, tools database and other application services databases form a single consolidated application services database in modular learning system 144.

Although the modular learning system 144 is described as being composed of various components like databases and modules, the modular learning system 144 may comprise fewer or more databases, modules, and other components. For example, the modular learning system 144 may include a Learning Application Genre Database, a Locational Learning Facility Price Range Database, a Learning Workshop Database, a Multilingual Dictionary Database, a Concept Tags Database, a Learning Objectives/Outcomes Database, and a Micro tutoring Services Database, and a Skill and Ability Tags Database. The modular learning system 144 may also include an Age Compatibility Module, a Learner Ranking Module, a Tutor Ranking Module, a Learner Billing Module, a Tutor Remittance Module, a Profile Management Module, a User Roles Management Module, a Learning Tools Management Module, a Learning Facility Management Module, Metadata Management Module, a Notification Module, a Recruitment Module, a Funding Module, a Map Module, a Learning Application Template Programming Interface Module, an Age Compatibility Module or a Translation Interface Module, with the present disclosure still falling within the scope of various embodiments. In some embodiments, an individual or group may play a plurality of user roles on the modular learning system, (e.g., tutoring user learning new applications as a learning user through another tutoring user, a learning application authoring user translating the authored application or developing the application template), with the present disclosure still falling within the scope of various embodiments.

In various embodiments the modular learning system 144 may be any of a web application, a mobile application, or an embedded module or subsystem of a social networking environment, a learning content management system, a learning management system, a professional networking environment, an electronic commerce system, an electronic payments system, a mobile operating system, a computer based operating system, or of a tablet based operating system, with the present disclosure still falling within the scope of various embodiments. In one embodiment, a distinct roles management module is configured for managing and authorizing different roles associated with the various users of the modular learning system 144 and in the respective user databases. For example, the roles management module may provide distinct feature tabs and functionalities to each user based on the role associated with him or her. It can be noted that, the roles management module may enable a user to have one or more roles for accessing the modular learning system 144. For example, a tutoring user can avail the functionality and interface tabs of a learning user and also of a translating user if authorized by the modular learning system 144.

In one embodiment, a distinct metadata management module is configured for managing metadata associated with a plurality of specific learning applications, like learning application 300. In one embodiment, the metadata management module is configured for receiving, storing, updating and retrieving various types of metadata associated with each learning application 300 in the learning application database 204. In another embodiment, the metadata management module is configured for receiving and storing updated metadata of a specific learning application 300 in database 204 at regular intervals of time as updated by different users in authorized user roles and retrieving the required metadata when requested by the purchase management module 238 and the performance management module 240 for determining compatibility and performance compatibility of requested microlearning service stack respectively. In yet another embodiment, the metadata management module enables various users of the modular learning platform to update metadata associated with specific learning applications in the learning application database according to their user role.

It is appreciated that, in some embodiments, various databases like 202, 204, 206, 208, 230, and 232, modules 238 and 240 as well as the databases, modules, components and engines of the above embodiments may be stored in the form of machine readable instructions in the memory of the modular learning system 144 and executed by a processor of the modular learning system 144 to perform one or more embodiments disclosed herein. Alternatively, the various databases like 202, 204, 206, 208, 230, and 232, modules 238 and 240 as well as the databases, modules, components and engines of the above embodiments may be implemented in the modular learning system in the form of an apparatus configured to perform one or more embodiments disclosed herein.

FIG. 3 is a block diagram of a learning application 300, according to one embodiment. Each learning application 300 comprises a plurality of kinds of application metadata in addition to the instructional content and associated media for a particular topic or subject. The instructional content and media of each learning application 300 may comprise a specific unit of instruction for a particular portion of knowledge or a skill, and may vary widely in scope. The learning application 300 may be very narrow in scope, such as “treading water” or may be broad in scope, such as “overview of world history”, depending on the authoring process of learning application authoring user 104. The learning application 300 could indicate a theoria (to think, a theory based application using primarily memory, reasoning, logic) performance type or a praxis performance type (to do, a practical performance type or a poeisis performance type). The learning application 300 may comprise metadata indicating associated application services for purchasing or performing the learning application 300 like tutor metadata 336, tools metadata 322 and learning facility metadata 316. In one embodiment, the learning application 300 may be requested for purchase or performance with associated application services as a microlearning service stack, wherein the application services comprise of access to tutoring user 112, access to a learning tool from learning tools database 232 and access to a learning facility from facilities database 230. For example, the media metadata 326 of a learning application 300 provided by learning application authoring user 104 may specify instructions for learning how to swim a breaststroke, but the media metadata 326 does not typically specify individual pools i.e. learning facilities to perform the learning application or tutors to coach and review the performance. Rather, the application services metadata like tutor metadata 336, tools metadata 322 and learning facility metadata 316 indicates tutors, tools, and facilities which the learning user may choose to perform the learning application's instructions.

The Certification Metadata 302 is configured for receiving, storing, retrieving, displaying and updating certification history as well as live certifications of the learning application 300, including, for example, a certification from educational board 108 and another educational board in another state, present as a certifying user in database 202 or a distinct certifying user database. In some embodiments, the certification metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Scoring Metrics Metadata 304 is configured for receiving, storing, retrieving, displaying and updating a plurality of metrics for quantitative and qualitative scoring as defined and updated for learning application 300 by learning application authoring user 104. In some embodiments, the quantitative scoring of each metric is conducted during the performance by a dedicated module within the learning application 300 itself, while in other embodiments of a performance, especially a non-screen based praxis or poeisis performance, the quantitative and optionally, qualitative score for each metric is received through a user device 140 from the learning user 102 and/or the tutoring user 112. In some embodiments, the scoring metrics metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Language Metadata 306 is configured for receiving, storing, retrieving, displaying and updating a plurality of translations of all user viewable application metadata for learning application 300 translated by, for example, learning application translating user 106 into Bengali, comprising of media metadata 326 like instructional text, subtitles to audio and video instructions, and all other linguistic content for the preview, performance and review of learning application 300 by learning user 102 and preview and review of the learning performance by tutoring user 112. In some embodiments, metadata 306 further comprises translations in at least one other language, of performance type metadata 308, duration metadata 310, subject links and tags metadata 312, age level metadata 314, learning facility metadata 316, authoring metadata 318, sequence metadata 320, tool metadata 322, mode metadata 324, medium metadata 328 and job skill metadata 330. In some embodiments, the language metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Performance Type Metadata 308 is configured for receiving, storing, retrieving, displaying and updating the performance type of the learning application 300. For example, the metadata 308 could indicate a theoria (to think, a theory based application using primarily memory, reasoning, logic, like a ‘Biomechanics of Swimming’ Pop Quiz) performance type or a praxis performance type (to do, a practical performance type like a ‘eight hundred meter Freestyle Swim as per Olympic performance guidelines’ or a poeisis performance type (to make, a creation oriented performance type like a ‘five minute Synchronized Swimming Choreography’), such that the learning user is already aware of the task or performance type before purchasing and performing the learning application 300. In some embodiments, the performance type metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Duration Metadata 310 is configured for receiving, storing, retrieving, displaying and updating the suggested duration of the learning application 300. In some embodiments, the metadata 310 indicates a fixed duration like, fifteen minutes, or thirty minutes, or one hour, while in other embodiments, the metadata indicates a variable duration with, optionally, a predetermined minimum or maximum duration depending on the duration metadata set by the learning application authoring user 104. In some embodiments, the duration metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Subject Metadata 312 is configured for receiving, storing, retrieving, displaying and updating a plurality of subject links and tags attached to the learning application 300 by the learning content application authoring user from among the subject links and tags present in the Subject Database 206. In some embodiments, the subject links and tags are attached to specific concepts or terms within the Media Metadata 326. In some embodiments, the subject link/tag metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Age Level Metadata 314 is configured for receiving, storing, retrieving, displaying and updating the suggested age level of the learning user 102 for performance of the learning application 300. In some embodiments, the age level is set as a minimum suggested age say, for example, ten plus by the learning application authoring user 104. In other embodiments, a range of suggested learner ages is set by the learning application authoring user 104. In some embodiments, the age level metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Learning Facility Metadata 316 is configured for receiving, storing, retrieving, displaying and updating the suggested learning infrastructure required in a learning facility for performance of the learning application 300. In some embodiments, such learning facilities and infrastructure (e.g., Olympic Sized Swimming Pool) required for the performance of the learning application (e.g., eight hundred meter Freestyle to Olympic Guidelines) is received and updated by the learning application authoring user 104 by picking the same from a learning facility database 230 available on the modular learning system 144. In other embodiments the metadata 316 is received and updated by the administering user 124 of learning facility 132. In some embodiments, the learning facility metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Authoring Metadata 318 is configured for receiving, storing, retrieving, displaying and updating the authoring metadata received by the learning application author 104, including for example the name, signature, contact details, intellectual property disclaimer and other information of the user or user group. In some embodiments, the metadata also includes metadata generated by the modular learning system 144 during the authoring user's editing process, including the version history, tracked changes and time stamps of edits and updates to the learning content application. In some embodiments, the metadata may also include citations to other learning content applications or other learning content application authoring users made by the user 104.

The Sequence Metadata 320 is configured for receiving, storing, retrieving, displaying and updating the suggested sequence of performance of the learning application 300 relative to another learning application. The sequence metadata may indicate if the learning application should be performed before, after, instead of, or with another learning application by learning application authoring user 104. The user 104 may wish for any learning user, say 102 to perform an advanced microbiology learning application 300 only after performing a corresponding beginner's microbiology learning application, irrespective of the learning user's age or quality of performance. In other embodiments, wherein the learning application authoring user is not the author of the suggested beginner's application, the user 104 may input a sequence suggesting to the learning user 102 to perform the learning application before or after a learning application authored by another learning application authoring user. In some embodiments, the sequence metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Tool Metadata 322 is configured for receiving, storing, retrieving, displaying and updating the compatible tools or learning materials to the learning application 300. In some embodiments, the tool compatibility is received from and updated by the learning application authoring user 104 by accessing the tools database 232. In other embodiments, the tool compatibility is received and updated by the learning tools supplying user 118 by accessing the learning application database 204. In still other embodiments, the tool compatibility may be updated by the modular learning system 144. In some embodiments, the tool metadata is used to determine purchase compatibility of the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204. In some embodiments, wherein the learning tool is a peripheral input device which can be connected to the user device 140 during the learning application performance (e.g., Electric Guitar attached to a user device 140 during an ‘Introduction to Hard Rock’ learning application) the Tool Metadata includes the compatibility to the user device 140. In other embodiments, wherein the learning material is not material to the user device 140, (e.g., Sulphuric Acid during a Chemistry Experiment) the Tool Metadata may not include any additional user device compatibility.

The Mode Metadata 324 is configured for receiving, storing, retrieving, displaying and updating the available modes of performance of the learning application. In some embodiments, the mode metadata 324 is determined by the modes chosen by the learning content application authoring user from the learning application template chosen. In various embodiments, the learning application may comprise an individual learner performance mode, a learner plus learner cooperative performance mode, a learner versus learner competitive performance mode, a learner plus tutor cooperative performance mode, a learner versus tutor competitive performance mode, a limited plurality of learners (e.g., four learners) cooperative performance mode, a limited plurality of learners (e.g., four learners) competitive performance mode, a tutor plus limited plurality of learners (e.g., nine learners) cooperative performance mode (a typical classroom mode). Although the Mode Metadata 324 is described as being composed of various available modes as chosen by the learning application authoring user, various other modes (e.g., a limited plurality of learners vs. a limited plurality of learners competitive performance mode) may comprise the Mode Metadata 324 and still fall within the scope of various embodiments. In some embodiments, the various Media Metadata 326 for the preview, performance and review screens for each mode of the same learning application and the sequence of the same (especially wherein the learning application 300 is performed by multiple users from the same user device and, optionally, by viewing the same display device) is configured for receiving, storing, retrieving, displaying and updating in the Media Metadata 326. In some embodiments, the mode metadata 324 is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Media Metadata 326 is configured for receiving, storing, retrieving, displaying and updating text, image, audio, video, animation, links and other interactive elements of the learning content application as received and updated by the learning application authoring user 104 during the publishing and revision of the learning content application 300. In other embodiments, the learning application Media Metadata may comprise the theoria, praxis or poeisis task or, optionally, plurality of tasks to be completed during the performance, their sequence, and, optionally, the learning outcomes and objectives of the same. In some embodiments, the media metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Medium Metadata 328 is configured for receiving, storing, retrieving, displaying and updating the medium of access to the learning application preview, review and performance screen during the microlearning performance. For example, for a Beginner's Kathak Dancing microlearning Application, in addition to requiring a compatible learning facility and tutoring user, the learning application authoring user 104 or, optionally, modular learning system 144 may require the preview and review screen to be viewable only on a display device connected to a learning console user device or the display device of a computer device but not a mobile device screen to ensure an optimum learning experience. In another case, for a Kathak Quiz microlearning application, the learning application authoring user 104 or, optionally, modular learning system 144 may require the performance screen, preview screen and review screen to be viewable only on a mobile device screen but not on a display device connected to a learning console user device, or the display device of a computer device. In some embodiments, the medium metadata may further comprise the compatibility to a plurality of software platforms and, optionally, runtime environments as determined by the modular learning system 144. In some embodiments, the medium metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Job Skill Metadata 330 is configured for receiving, storing, retrieving, displaying and updating the skills and abilities tagged to the learning application 300 by the learning application authoring user 104, the recruiting user 120 or, optionally, the modular learning system 144 from a skills and abilities database provided by the modular learning system 144. In some embodiments, the metadata is used by a recruiting user 120 to post the completion of the learning application (optionally, in a controlled testing environment) or group of applications as a minimum requirement for a particular job role to a plurality of potentially employable learning users. In other embodiments, the metadata is used by the recruiting user 120 to post the requirement of completion of the learning application 300 (optionally, in a controlled testing environment) or group of applications as a minimum requirement for a promotion to a higher post in a particular organization, to a plurality of potentially employable learning users. In some embodiments, the job skill metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Error Metadata 332 is configured for receiving, storing, retrieving, displaying and updating the potential errors which can be made by the learning user 102 (e.g., 10 potential errors in an auditing microlearning application), as determined by the learning application authoring user 104. In some embodiments, wherein the learning application (e.g., a Karnataka History Quiz) is performed through an input device on a user device 140 itself, the error metadata may be synchronized to each potential input point during the learning application 300 performed through the user device 140 by the learning application authoring user 104. In some embodiments, wherein the learning application (e.g., a Karate kata) 300's error metadata is outside the recordable boundaries of the user device 140, the potential errors may be entered with reference to each instructional step of the performance by the learning application authoring user 104, such that at the time of the performance, the tutoring user (or, in some modes, the learning user 102 himself, another learning user, or the recruiting user 120) may note errors in each observable step of the performance and confirm the same on user device 140 to generate the score. In other embodiments, wherein the error observed by the observing user (say, tutoring user 112) is not part of the potential errors in the Error Metadata 332 of the application 300, the tutoring user 112 may update such errors to the Errors Metadata, or optionally, send the same to the learning application authoring user 104, to be updated after review. In some embodiments, the error metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Template Metadata 334 is configured for receiving, storing, retrieving, displaying and updating the default script, formatting and media modules of the learning application template used to author the learning application 300. In some embodiments, wherein a particular sequence and format of the same has been chosen by the learning content application authoring user from the options offered in the template developed by the learning application template developing user, the chosen setting may be a part of the Template Metadata 334. In various embodiments, the learning application templates may comprise a quiz, role play, simulation, project, experiment, essay, recital, research paper, race, challenge, problem, game, question, exercise or problem set. In some embodiments, the templates may be for performances conducted and supervised in front of a display device with an input device connected to the user device 140, while in other embodiments the templates may be for previews, reviews and guidelines for performances conducted without the input device, with the user device 140 merely placed next to the performance area or learning station (e.g., for Praxis Tasks in Dance Applications) as a reference point. Although the Template Metadata is described as being composed of various available templates as developed by the learning application template authoring user and chosen by the learning application authoring user, various other templates (e.g., a Swimming Race Template, a Patent Drafting Template) may comprise the Template Metadata 334 and still fall within the scope of various embodiments. In some embodiments, the template metadata is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

The Tutor Metadata 336 is configured for receiving, storing, retrieving, displaying and updating the compatibility of tutoring users to learning content application. In some embodiments, the tutoring user compatibility is received from and updated by the tutoring user 112 by updating the tutor database 208 (e.g., a Mathematics Tutoring User whose medium of instruction is Mandarin updating compatibility to a plurality of Mathematics microlearning applications available in Mandarin, in the tutor database 208). In other embodiments, the tutoring user compatibility metadata is received from and updated by the tutoring user 112 by accessing the learning application database 204. In still other embodiments, the tutoring user compatibility metadata may be updated by the modular learning system 144. In some embodiments, the Tutor Metadata 336 is also used to determine purchase compatibility in the microlearning purchase management module 238 through learning application database 204 and to determine performance compatibility in the microlearning performance management module 240 through learning application database 204.

In various embodiments, the metadata of a learning application 300 is retrieved, displayed to and updated by a plurality of kinds of users as may be applicable to the kind of metadata and the kind of user. Optionally, in addition to receiving and storing the metadata, the modular learning system 144 may update the learning application metadata as and when generated in the system through a dynamic metadata update module or through a dedicated administering user. In some embodiments, the learning application authoring user 104 may further play the role of the learning application template developing user. In some embodiments, the modular learning system 144 may play the role of the learning application authoring user 104 and, optionally, the role of the learning application template developing user 110 to author and update the media and template metadata of the learning application 300.

In some embodiments, the microlearning purchase management module 238 and microlearning performance management module 240 retrieve some or all of the above metadata associated with the learning application 300 from a learning application database 204 in a repository module of the modular learning system 144.

In some embodiments, the media metadata 326 of the learning application may comprise an electronic textbook, an electronic journal, an instructional video, or an instructional animation. In some embodiments each learning application 300, may be a distinct mobile application, browser based web application, or a desktop application. In some embodiments, each learning application 300 may be an executable file, a program, add in, macro, plug-in, or other program of instructions associated with a plurality of application programming interfaces of the modular learning system 144.

Although the learning application 300 is described as comprising various metadata and associated data fields stored and updated in learning application database 204, fewer or more metadata and associated data fields (e.g., Application Programming Interface Metadata, Organization versus Organization Social Learning Mode Metadata, University versus University Social Learning Mode Metadata, Testing Metadata, Learning Visits Metadata, Learning Workshops Metadata, Tutorials Metadata) may comprise the Learning Application 300 and associated learning application database 204, with the present disclosure still falling within the scope of various embodiments. In some embodiments, each version of the same learning application 300 with different metadata, for example language metadata, is treated as a distinct learning application in learning application database 204.

In some embodiments, an authorization to update certification metadata 302 of a learning application 300 is limited to a predetermined plurality of certifying users like user 108 and recruiting users like user 120. In some embodiments, an authorization to update scoring metrics metadata 304, performance type metadata 308, age level metadata 314, authoring metadata 318, mode metadata 324, media metadata 326, medium metadata 328, and error metadata 332 of a learning application 300 is limited to a predetermined plurality of learning application authoring users like user 104. In some embodiments, an authorization to update language metadata 306 of a learning application 300 is limited to a predetermined plurality of learning application translating users 106. In some embodiments, an authorization to update duration metadata 310 of a learning application 300 is limited to a predetermined plurality of learning application authoring users like user 104 and learning application template developing users like user 110. In some embodiments, an authorization to update subject link/tag metadata 312 of a learning application 300 is limited to a predetermined plurality of users in any user role. In various embodiments, such authorizations may be set by an administrator of system 144 based on the user role, user profile information and user preferences information of the corresponding users.

In some embodiments, an authorization to update learning facility metadata 316 of a learning application 300 with associated learning facilities is limited to a predetermined plurality of learning facility administering users like user 124. In some embodiments, an authorization to update sequence metadata 320 of a learning application 300 is limited to a predetermined plurality of learning application authoring users like user 104 and tutoring users like user 112. In some embodiments, an authorization to update tool metadata 322 of a learning application 300 with associated learning tools is limited to a predetermined plurality of tool supplying users like user 118. In some embodiments, an authorization to update job skill metadata 330 of a learning application 300 is limited to a predetermined plurality of recruiting users like user 120. In some embodiments, an authorization to update template metadata 334 of a learning application 300 is limited to a predetermined plurality of learning application authoring users like user 104 and a predetermined plurality of template developing users like user 110. In some embodiments, an authorization to update tutor metadata 336 of a learning application 300 with associated tutoring services is limited to a predetermined plurality of tutoring users like user 112. In some embodiments, an authorization to update an optional learning event metadata of a learning application 300 with associated learning workshops, visits and other learning events is limited to a predetermined plurality of learning workshop organizing users like user 116 and learning visit organizing users like user 114. In some embodiments, the associations of application services to learning applications are enabled automatically by a metadata association module in the system 144. In some embodiments, each learning application 300 is associated with a subset of learning facilities in a learning facilities database 230. In some embodiments, each learning application 300 is further associated with a subset of learning stations of each associated learning facility. In some embodiments, each learning application is associated with a subset of tutors in a tutor database 208. In some embodiments, each learning application is associated with a subset of tools in a learning tools database 232.

FIG. 3B is a block diagram of a learning application 340 according to another example embodiment. The learning application 340 is illustrated to depict metadata of the learning application related to a microlearning service stack. The learning application 340 also illustrates some other performance data used during its performance by a learner. This microlearning service stack may be requested for purchase or performance by learning user 102. In this embodiment, the microlearning service stack includes a learning application 340, a time based tutoring service by a particular tutor in database 208, time based access to a particular learning facility from database 230, and access to a particular tool from database 232. The particular services above may or may not be associated with the corresponding tutor metadata, facilities metadata, and tool metadata of learning application 340 at the time of a request. The learning application 340 includes content data 342 which designates particular content media and content attributes of the learning application 340. The learning application also includes other metadata as described above, such as tutor metadata 336, learning facility metadata 316, learning tool metadata 322, performance type metadata 308, and scoring metrics metadata 304. As such, the learning application 340 illustrates some aspects of the learning application used for purchase or performance of the learning application 340 by a learner as part of a microlearning service stack, such as content, tutors, facilities, and tools. The learning application 340 may also include any other metadata as described above with reference to FIG. 3A. Any other metadata as described above with reference to FIG. 3A may also be part of the content data 342 of the learning application 340.

The lifecycle of a learning application 300 is now described according to one embodiment. Initially, a learning application template developing user 110 creates a learning application template stored in a distinct template database in a modular learning system 144. Next, the learning application authoring user 104 publishes learning application content stored as media metadata of the learning application 300. The learning application content includes media metadata referencing an external source, and the update notification is generated responsive to new media added to the external source. In case a template has been chosen for the application 300, the template metadata 334 is stored as well. The tutor metadata 336, learning facility metadata 316, learning tool metadata 322 and other optional application services metadata indicating tutoring services, learning facilities, learning tools, and other application service types associated with the learning application 300 are dynamically updated by the corresponding tutoring users, learning facility administrators, tool suppliers and other application service providers. At this point, the learning user may modularly select application services in a microlearning stack to purchase or perform the learning application. Next, the learning user 102 selects the learning application 300 and identifies application services requested for purchase or performance as a consolidated stack. The approval of the purchase or performance request for learning application 300 and particular application services in the microlearning service stack may be determined by the specific metadata of the learning application 300 being associated with corresponding application services, and other specific metadata of the learning application being compatible with the profile information and preferences of the learning user.

FIG. 4 is a block diagram of a learning application publishing management module 242 according to one embodiment. The learning application publishing management module 242 maintains various modules and databases for managing application publishing.

The learning application metadata module 402 is configured for receiving, storing and updating a plurality of kinds of metadata for each learning application in learning application database 204 like the metadata described with respect to FIG. 3. The learning application metadata module 402 by receives edits and updates of the same from the learning application authoring user 104 and, optionally, the learning application translating user 106 and learning application certifying user 108.

The learning application template library database 404 is configured for receiving, storing, retrieving and updating a plurality of identifier items and interface items for each learning application template made available by learning application template authoring user 110. In some embodiments, wherein the learning application authoring user 104 requests a template, e.g., multiple choice quiz template, during the publishing of a learning application, the content editing interface generator 426 accesses the template's identifier items and interface items. These items are displayed to the learning application authoring user 104 after processing a transaction for the same, through an interface on the learning application authoring user's user device 140. In some embodiments, the templates and associated identifier and interface items may be stored along with a price item for the same as preferred by learning application template developing user 110. In other embodiments, the templates and associated identifier items and interface items may be stored in module 404 by the modular learning system 144.

The collaboration module 406 is configured for managing access by a plurality of learning application authoring users to the content editing interface generated by generator 426 during the editing of the same learning application, say learning application 300, with the interface simultaneously displayed and updated on all of the preferred user devices 140 of the authoring users. In some embodiments, the module may be used to generate interface items for each update to the learning application by one or a plurality of learning application authoring users. In such embodiments, the interface items may be accessed by generator 426 to display the same to all other learning application authoring users who have not made such edits but are authorized to edit the learning applications, through an interface displayed on of the preferred user devices 140 of the users.

The dynamic updation module 408 is configured for dynamically updating the edition of a published learning application, say learning application 300 with a plurality of updated metadata based on granular dynamic updation preferences chosen or filled in by the learning application authoring user 104 of the learning application 300. In some embodiments, the metadata may be Media Metadata 326 authorized to be updated dynamically by a learning application authoring user (e.g., a RSS feed of articles on microbiology from a microbiology blog in a microbiology application) by accessing an external media source. In some embodiments, the metadata may be Language Metadata 306, or Certification Metadata 302, or Learning Facility Compatibility Metadata 316 or Tutor Compatibility Metadata 336 selected by various other users of the modular learning system 144. This metadata may be authorized to be updated dynamically by the learning application authoring user 104. In some embodiments, the learning application authoring user 104 may authorize dynamic updation of certain metadata of a published learning application, while authorizing other updates manually after a review process (e.g., reviewing translation of an English biology theoria application into Hindi before authorizing the update of language metadata 306 of the learning application).

The review module 410 is configured for managing the review process of edits or updates made or suggested to the learning application 300 by the learning application authoring user 104 after the first edition of the learning application has been published. In some embodiments, wherein manual updating is preferred by the authoring user 104 for certain metadata of the learning application, the review module 410 may generate a unique review interface item to be accessed by content editing interface generator 426 and displayed through an interface on the authoring user 104's user device 140. In other embodiments, the review module 410 may generate a unique review reminder interface item for each unique learning application after predetermined intervals of time as preferred by the authoring user 104 for each learning application published by the authoring user 104 (e.g., a reminder to review and update biology application to be reviewed and updated after twelve weeks and another mathematics application to be reviewed and updated after forty eight days). In other embodiments, the review module 410 may receive, store and update a plurality of review requests from learning users performing the applications or tutoring users monitoring or reviewing the applications performance, and generate a review request interface item for each review request. In such embodiments, the review module 410 may be accessed by generator 426 to display the review request interface items for each of such learning application to the authoring user 104 through an interface on the learning application authoring user 104's user device 140 (e.g., a review request from tutoring user 112 to update the content of software engineering praxis learning application with the latest development in that field). In other embodiments, the module may generate a unique review request interface item based on a review request received from another learning application authoring user on the modular learning system 144 and stored and updated in the module 410 (e.g., a biology learning application authoring user requesting another microbiology learning application authoring user to update metadata of the latter's learning application with the latest developments in the field of microbiology). In still other embodiments, a learning application authoring user 104 may authorize other learning application authoring users on the modular learning system 144 to peer review a learning application before it is published with the review module 410 generating a peer review request item for each such requested learning application authoring user, with the interface generator 426 accessing and displaying the same to each of the learning application authoring users through an interface on each of their user devices 140. In various embodiments, a peer review fee may be paid by the learning application authoring user to the other learning application authoring users, with the present invention still falling within the scope of various embodiments.

The citation module 412 is configured for managing the citation of one or a plurality of learning applications from user database 204 as references in the learning application 300 are being edited or published by learning application authoring user 104. For example, a learning application authoring user authoring an application in organic chemistry may cite another learning application authored by the same or another learning application authoring user in organic chemistry. In some embodiments, the cited learning applications may be authored by the same learning application authoring user 104, while in other embodiments, the cited learning applications may be authored by other learning application authoring users on the modular learning system 144. In various embodiments, a citation fee or royalty may be paid by the learning application authoring user to other learning application authoring users for each citation in each learning application of the learning application authoring user, with the present invention still falling within the scope of various embodiments. In some embodiments, the user 104 may cite citation items from a plurality of other media databases outside the modular learning system 144, such as websites, blogs, books, films, music, videos, lectures, research papers and other media items in the databases by choosing or filling in the same in corresponding input areas through a learning application citation interface generated by generator 426 and displayed the user 104's preferred 140.

The learning application purchase analytics module 414 is configured for generating a plurality of purchase analytics data items for each learning application in database 204 by accessing purchase data items of the learning applications from the microlearning purchase management module 238. Further, the module 414 is used to generate a plurality of purchase analytics data interface items for the corresponding data items of each learning application. The interface generator 426 accesses the interface items and displays the same to each corresponding learning application authoring user through an interface on the learning application authoring user's preferred user device 140.

The learning application performance analytics module 416 is configured for generating a plurality of performance analytics data items for each learning application in database 204 by accessing performance data items of the learning applications from the microlearning performance management module 240. Further, the module 416 is used to generate a plurality of performance analytics data interface items for the corresponding data items of each learning application. The interface generator 426 accesses the interface items and displays the same to each corresponding learning application authoring user through an interface on the learning application authoring user's preferred user device 140. In some embodiments, the performance data items of the learning application may exclude the identity items of the learning users who have performed the learning application, depending on the privacy preferences of the learning users in the user database 202.

The authentication module 418 is configured for authenticating the login credentials of the learning application authoring user i.e. carries out validation of authoring user credentials, before granting access to the content editing interface generated by generator 426 and displayed on the learning application authoring user's preferred user device 140. The authentication module accesses the credential preferences of the learning application authoring user from the learning application authoring user database 202 and determines whether the credentials are the same as those filled in by the user 104 in input areas displayed in a login credentials interface generated and displayed by generator 426 on the learning application authoring user 104's preferred user device 140. In embodiments, wherein the credentials received match the stored credentials preferences, module 418 authorizes generator 426 to display a learning application publishing management interface to the requesting learning application author 104 on the user 104's preferred user device 140. In embodiments, wherein the credentials received do not match the credentials preferences stored in database 206, the module 418 does not authorize generator 426 to display the learning application publishing management interface and instead requests generator 426 to generate and display a learning application publishing management access denied interface item through an interface on user 104's preferred user device 140.

The learning application storage module 420 is configured for temporarily receiving, storing, retrieving and updating a plurality of media metadata, other metadata and edits chosen, filled or uploaded by the learning application authoring user in a single editing session. In some embodiments, wherein multiple editing sessions are conducted by user 104 before publishing or updating the learning application 300, the storage module 420 may store all the media metadata, other metadata and edits to the learning application that have been saved but not published by the user 104 in the multiple sessions. In some embodiments, upon publishing of the learning application, the media metadata, other metadata and edits may be accessed by edition manager 424 to organize the same for publishing and, optionally, deleting from the module 420.

The pricing terms module 422 may be configured for receiving, storing, retrieving and updating the pricing terms for each learning application from the learning application authoring user 104. In some embodiments, wherein the learning application can be accessed for free by a learning user 102 the preferences may be stored in module 422 and accessed by the microlearning purchase management module 238 at the time of publishing the application. In some embodiments, a particular price may be chosen or filled in by the authoring user 104 in multiple currencies for sale of the learning applications in multiple economic areas and markets, and the same may be received and stored by the pricing term module 422 for access by the purchase management module 238 at the time of publishing the application in the economic areas. In other embodiments, wherein a price range is set by the modular learning system 144 for the subject or publishing location, the module 422 may further determine whether the price item chosen or filled in by user 104 for the learning application 300 is within the range permitted by the modular learning system 144. In other embodiments, the module 422 may be used to change/update the price of an already published learning application in one or a plurality of publishing locations and currencies by user 104, by choosing or filling in the updated price in an input area generated by generator 426 through a learning application pricing terms interface displayed on the user 104's preferred user device 140.

The edition manager 424 is configured for organizing updates to an existing or new unpublished learning application by accessing the media metadata, other metadata and edits stored in storage module 420. In some embodiments, the edition manager 424 may generate update data items for a newer edition of published learning application by comparing the published edition's metadata through metadata module 402 with the edited editions metadata in module 420 and display the same through generator 426 for reference to the learning application authoring user 104 before the user authorizes the publishing of the updated edition. The edition manager 424 may further generate a unique edition number for each newer edition of the learning application at the time of publishing the application. The edition number item thus generated may be accessed microlearning purchase management module 238. In case of a newer edition, the module 238 may further display the availability of a newer edition of the purchased learning application to learning users in learning user database 202, who have already purchased an older edition of the learning application.

The content editing interface generator 426 is configured for generating a plurality of content editing interface items and corresponding input areas during the editing and publishing of each learning application 300 by each learning application authoring user 104 and displays the same through a content editing interface on a learning application authoring user 104's preferred user device 140. In various embodiments, the generator may further access interface items generated by learning application template database module 404, collaboration module 406, review module 410, learning application purchase analytics module 414, learning application performance analytics module 416, authentication module 418, pricing terms module 422, edition manager 424 and other modules and display the same along with corresponding input areas through a corresponding interfaces on a learning application authoring user 104's user device 140.

Although the learning application publishing management module is described as being composed of various modules, fewer or more modules (e.g., Learning Application Approval Module, Publishing Location Module) may comprise the module with the present invention still falling within the scope of various embodiments.

FIG. 5 is a flow diagram 500 of a method for publishing of a new learning application in a modular learning system environment. At step 502, the learning application publishing management module 242 receives a learning application authoring request from a learning application authoring user, say user 104, on the modular learning system 144 through an interface generated by generator 426 and displayed on the user 104's user device 140. At step 504, the authentication module 418 receives the authoring user's credentials, say a user name or identity code with accompanying password as filled in by user 104 in the corresponding credential input areas generated by module 418 and displayed through an interface generated by generator 426 on the user 104's preferred user device 140. At step 506, the authentication module 418 determines if the authoring user 104's credentials are the same as those stored previously for the learning application authoring user by accessing and comparing the same from the authoring user database 202. In some embodiments, wherein the credentials do not match, the authentication module 418 denies access to the content editing interface generated by generator 426, to the user 104.

At step 508, when the authoring user 104's credentials and user role are valid, the authentication module 418 grants access and the content editing interface generator 426 generates and displays a plurality of content editing interface items and, optionally, interface items generated by learning application template database module 404, collaboration module 406, review module 410, learning application purchase analytics module 414, learning application performance analytics module 416, authentication module 418, pricing terms module 422, edition manager 424 and other modules to the user 104 on the user 104's user device 140.

At step 510, the learning application publishing management module 242 determines whether the authoring user 104 has requested a learning application template for a new application being published by the user 104. In some embodiments, wherein the learning application authoring user 104 also plays the user role of the learning application template developing user 110 for the learning application (e.g., a learning application software developer), the module 242 directly proceeds to receive and store media metadata, other metadata and edits received from the learning application authoring user 104 in module 420 and template metadata in module 404.

At step 512, in some embodiments wherein a template is requested by the authoring user 104, the interface generator 426 accesses the corresponding template identifier items and displays the same with the price as applicable to the authoring user through a template purchase interface on the user 104's user device 140. In embodiments, wherein the transaction is processed, the template is free and, optionally, the template is provided by the modular learning system 144, a template transaction processor and, optionally, the module 404 processes the transaction or, optionally, directly grants access to the template and corresponding template interface items which are retrieved by generator 426 and displayed through the content editing interface on the authoring user 104's preferred user device 140.

At step 514, the learning application storage module 420 receives stores and updates media metadata, other metadata and edits received from the learning application authoring user 104. In some embodiments, the step 514 may occur multiple times when there are several editing sessions before the publishing of the learning application, with the present invention still falling within the scope of various embodiments. At step 516, the dynamic updation module 408 may determine whether a translation or certification has been requested by authoring user 104 from a translating or certifying user, by choosing a preferred translation or certification through an interface generated by generator 426 on the user 104's preferred 140. In embodiments, wherein the translation, certification or, optionally, peer review has not been requested by the authoring user 104, the edition manager 424 may directly receive a publishing request for the learning application from the learning application authoring user 104.

At step 518, in case the translation, certification or peer review of the learning application is requested by authoring user 104, the authoring user 104 may review the updated language metadata, certification metadata and, optionally, peer review feedback and make further edits, if any, to the learning application metadata stored in module 420. At step 520, the edition manager 424 receives a publishing request for the learning application from the learning application authoring user 104 through the content editing interface generated by generator 426 on the user 104's preferred user device 140. At step 522, content editing interface generator 426 generates and displays a pricing terms input interface with corresponding areas to be chosen or filled in by the user 104 and the user 104 inputs the same through a preferred user device 140.

At step 524, in some embodiments, wherein modular learning system 144 curates each learning application and edition update before publishing the same to the marketplace and, optionally, libraries of the plurality of learning users on the system 144, the learning application metadata is accessed by the system 144 from module 420, for approval. At step 526, in embodiments, wherein the modular learning system 144 curates the learning application, the modular learning system 144 may approve or deny the publication of the learning application based on media metadata and other metadata chosen or filled in by user 104 (e.g., the system 144 may reject a theoria application on the history of violence if the age level metadata of the application is chosen as five years and above). The acceptance or rejection of learning applications by the modular learning system may be performed by manual curation or may be performed based on certain predefined rules. For example, the curation may be based on the age-level appropriateness of the learning application. The learning application may be registered in a subject or performance category, and each category may be associated with permissible ages. For example, a learning application relating to learning to drive a car may be rejected if the required age for the application is set significantly below the legal age for driving a car in the location the learning application is being offered.

When the application is rejected, the generator 426 may generate and display an ‘Application Rejected’ interface item to the authoring user 104 and the authoring user 104 may access the content editing interface generated by generator 426 to make requested edits to the learning applications with the edits being received and stored by module 420 for future approval.

At step 528, when the learning application is approved by the modular learning system 144 or, optionally, no approval is required from the system 144, the edition manager 424 generates and updates the learning application's identifier items in database 204 and the learning application's metadata in metadata module 402. The microlearning purchase management module 238 accesses the items and corresponding metadata from database 204 and 202 and, optionally, a new or updated edition number item from edition manager 424 and publishes the same to a microlearning marketplace and, optionally, to the libraries of a plurality of learning users from database 202 on a modular learning system 144.

Although the method for publishing of a new learning application in a modular learning system environment is described as being composed of various steps, fewer or more steps (e.g., Receive Template Version Update Confirmation for Existing Learning Application from Authoring User) may comprise the method with the present invention still falling within the scope of various embodiments.

Computing Machine Architecture

FIG. 6 is a block diagram illustrating modules of an example machine suitable for use as a modular learning system 144, in which any of the embodiments disclosed herein may be performed, according to one embodiment. This example machine is able to read instructions from a machine-readable medium and execute them in a processor (or controller).

Specifically, FIG. 6 shows a diagrammatic representation of a machine in the example form of a computer system 600 within which instructions 624 (e.g., software) for causing the machine to perform any one or more of the methodologies discussed herein may be executed. In alternative embodiments, the machine operates as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine may operate in the capacity of a server machine or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment.

The machine may be a server computer, a client computer, a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a cellular telephone, a smartphone, a web appliance, a network router, switch or bridge, or any machine capable of executing instructions 624 (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute instructions 624 to perform any one or more of the methodologies discussed herein.

The example computer system 600 includes a processor 602 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), one or more application specific integrated circuits (ASICs), one or more radio-frequency integrated circuits (RFICs), or any combination of these), a main memory 604, and a static memory 606, which are configured to communicate with each other via a bus 608. The computer system 600 may further include a graphics display unit 610 (e.g., a plasma display panel (PDP), a liquid crystal display (LCD), a projector, or a cathode ray tube (CRT)). The computer system 600 may also include alphanumeric input device 612 (e.g., a keyboard), a cursor control device 614 (e.g., a mouse, a trackball, a joystick, a motion sensor, or other pointing instrument), a storage unit 616, a signal generation device 618 (e.g., a speaker), and a network interface device 620, which also are configured to communicate via the bus 608.

The storage unit 616 includes a machine readable medium 622 on which is stored instructions 624 (e.g., software) embodying any one or more of the methodologies or functions described herein. The instructions 624 (e.g., software) may also reside, completely or at least partially, within the main memory 604 or within the processor 602 (e.g., within a processor's cache memory) during execution thereof by the computer system 600, the main memory 604 and the processor 602 also constituting machine-readable media. The instructions 624 (e.g., software) may be transmitted or received over a network 142 via the network interface 620.

While machine readable medium 622 is shown in an example embodiment to be a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) able to store instructions (e.g., instructions 624). The term “machine-readable medium” shall also be taken to include any medium that is capable of storing instructions (e.g., instructions 624) for execution by the machine and that cause the machine to perform any one or more of the methodologies disclosed herein. The term “machine-readable medium” includes, but not be limited to, data repositories in the form of solid-state memories, optical media, and magnetic media.

The modular learning system 144 may be one or more servers in which one or more methods disclosed herein are performed. The processor 602 may be a microprocessor, a state machine, an application specific integrated circuit, a field programmable gate array, etc. (e.g., Intel® Pentium® processor). The main memory 604 may be a dynamic random access memory and/or a primary memory of the modular learning system 144. The static memory 606 may be a hard drive, a flash drive, and/or other memory information associated with the modular learning system 144.

The bus 608 may be an interconnection between various circuits and/or structures of the modular learning system 144. The video display 610 may provide graphical representation of information on the modular learning system 144. The alphanumeric input device 612 may be a keypad, keyboard and/or any other input device. The cursor control device 614 may be a pointing device such as a mouse.

The storage unit 616 may be a hard drive, a storage system, and/or other longer term storage subsystem. The signal generation device 618 may be a bios and/or a functional operating system of the modular learning system 144. The network interface device 620 may be a device that may perform interface functions such as code conversion, protocol conversion and/or buffering required for communication to and from a network (e.g., the network 142 of FIG. 1). The machine readable medium 622 may provide instructions 624 on which any of the methods disclosed herein may be performed. The instructions 624 may provide source code and/or data code to the processor 602 to enable any one/or more operations disclosed herein. For example, the modular learning system 144 may be stored in the form of instructions 624 on a storage medium such as the main memory 604 and/or the machine readable medium 622 such as compact disk.

In one embodiment, a non-transitory computer-readable storage medium having tangibly embodied thereon a program of instructions executable by a processor or a computing device (e.g., the modular learning system 144) causes the computing device to perform method steps illustrated in FIG. 5.

Additional Configuration Considerations

Thus, the learning application publishing management module 242 allows the publishing and updating of learning applications. The learning application publishing management module 242 also allows for notifications of the application author to indicate when errors should be corrected or new material added to learning applications. For example, these notifications may come from tutoring users, or may be periodically generated to inform the application author. The modular learning system 144 may also monitor the standards promulgated by various certifying users. When a learning application is certified by a certifying user or the learning application is affected by a certification standard, the modular learning system 144 may generate a notification to the learning application author to review the application to ensure the application continues to meet the standards requirements. External data may also be used to suggest updates to the application data. For example, for a learning application dealing with a recent political figure, the modular learning system may be provided instructions to monitor news stories for mentions of the political figure and suggest the news stories to the authoring user to use in updating the learning application and keeping the learning application up to date.

Throughout this specification, plural instances may implement modules, operations, or structures described as a single instance. Although individual operations of one or more methods are illustrated and described as separate operations, one or more of the individual operations may be performed concurrently, and nothing requires that the operations be performed in the order illustrated. Structures and functionality presented as separate modules in example configurations may be implemented as a combined structure or module. Similarly, structures and functionality presented as a single module may be implemented as separate modules. These and other variations, modifications, additions, and improvements fall within the scope of the subject matter herein.

Certain embodiments are described herein as including functionality implemented in computing logic or a number of components, modules, or mechanisms, for example, as illustrated in FIGS. 2, 4, and 5. Modules may constitute either software modules (e.g., code embodied on a machine-readable medium or in a transmission signal) or hardware modules. A hardware module is tangible unit capable of performing certain operations and may be configured or arranged in a certain manner. In example embodiments, one or more computer systems (e.g., a standalone, client or server computer system) or one or more hardware modules of a computer system (e.g., a processor or a group of processors) may be configured by software (e.g., an application or application portion) as a hardware module that operates to perform certain operations as described herein.

In various embodiments, a hardware module may be implemented mechanically or electronically. For example, a hardware module may comprise dedicated circuitry or logic that is permanently configured (e.g., as a special-purpose processor, such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) to perform certain operations. A hardware module may also comprise programmable logic or circuitry (e.g., as encompassed within a general-purpose processor or other programmable processor) that is temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.

The various operations of example methods described herein may be performed, at least partially, by one or more processors, e.g., processor 602, that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein may, in some example embodiments, comprise processor-implemented modules.

The one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a “software as a service” (SaaS). For example, at least some of the operations may be performed by a computer-implemented method or a group of computers (as examples of machines including processors), these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., application program interfaces (APIs)).

In another embodiment, the microlearning purchase and performance interface provided by the modular learning system 144 can be accessed over a local area network, intranet or virtual private network accessible to a limited plurality of user devices at a preschool, school, college, university, educational board, professional standards authority, coaching class, a company, HR department, training department or at a training organization through a user device.

In another embodiment, the microlearning purchase and performance interface provided by the modular learning system 144 can be accessed over a wide area network, General Packet Radio Service network, an Enhanced Data for Global Evolution network, a 3G telecommunications network, a 4G LTE telecommunications network or other telecommunications network through a user device.

The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the one or more processors or processor-implemented modules may be located in a single geographic location (e.g., within a home environment, an office environment, or a server farm). In other example embodiments, the one or more processors or processor-implemented modules may be distributed across a number of geographic locations.

Some portions of this specification are presented in terms of algorithms or symbolic representations of operations on data stored as bits or binary digital signals within a machine memory (e.g., a computer memory). These algorithms or symbolic representations are examples of techniques used by those of ordinary skill in the data processing arts to convey the substance of their work to others skilled in the art. As used herein, an “algorithm” is a self-consistent sequence of operations or similar processing leading to a desired result. In this context, algorithms and operations involve physical manipulation of physical quantities. Typically, but not necessarily, such quantities may take the form of electrical, magnetic, or optical signals capable of being stored, accessed, transferred, combined, compared, or otherwise manipulated by a machine. It is convenient at times, principally for reasons of common usage, to refer to such signals using words such as “data,” “content,” “bits,” “values,” “elements,” “symbols,” “characters,” “terms,” “numbers,” “numerals,” or the like. These words, however, are merely convenient labels and are to be associated with appropriate physical quantities.

Although the present embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the various embodiments. For example, the various devices, modules, databases, etc. described herein may be enabled and operated using hardware circuitry (e.g., complementary metal-oxide-semiconductor (CMOS) based logic circuitry), firmware, software and/or any combination of hardware, firmware, and/or software (e.g., embodied in a machine readable medium).

Unless specifically stated otherwise, discussions herein using words such as “processing,” “computing,” “calculating,” “determining,” “presenting,” “displaying,” or the like may refer to actions or processes of a machine (e.g., a computer) that manipulates or transforms data represented as physical (e.g., electronic, magnetic, or optical) quantities within one or more memories (e.g., volatile memory, non-volatile memory, or a combination thereof), registers, or other machine modules that receive, store, transmit, or display information.

As used herein any reference to “one embodiment” or “an embodiment” means that a particular element, feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.

Some embodiments may be described using the expression “coupled” and “connected” along with their derivatives. For example, some embodiments may be described using the term “coupled” to indicate that two or more elements are in direct physical or electrical contact. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other. The embodiments are not limited in this context.

As used herein, the terms “comprises,” “comprising,” “includes,” “including,” “has,” “having” or any other variation thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, article, or apparatus that comprises a list of elements is not necessarily limited to only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Further, unless expressly stated to the contrary, “or” refers to an inclusive or and not to an exclusive or. For example, a condition A or B is satisfied by any one of the following: A is true (or present) and B is false (or not present), A is false (or not present) and B is true (or present), and both A and B are true (or present).

In addition, use of the “a” or “an” are employed to describe elements and components of the embodiments herein. This is done merely for convenience and to give a general sense of the invention. This description should be read to include one or at least one and the singular also includes the plural unless it is obvious that it is meant otherwise.

According to the embodiments described in FIG. 1 through 7, various methods and electric structures may be embodied using transistors, logic gates, and electrical circuits (e.g., Application Specific Integrated Circuitry and/or in Digital Signal Processor circuitry). For example, the purchase management module 238, performance management module 240 and other modules of the figures may be enabled using a purchase management circuit, a performance management circuit, and other circuits using one or more of the technologies described herein. In addition, it will be appreciated that the various operations, processes, and methods disclosed herein may be embodied in a machine-readable medium and/or a machine accessible medium compatible with a data processing system (e.g., a server) and may be performed in any order. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.

Upon reading this disclosure, those of skill in the art will appreciate still additional alternative structural and functional designs for a system and a process for managing the purchase and performance of learning applications and associated application services in a microlearning stack through the disclosed principles herein. Thus, while particular embodiments and applications have been illustrated and described, it is to be understood that the disclosed embodiments are not limited to the precise construction and components disclosed herein. Various modifications, changes and variations, which will be apparent to those skilled in the art, may be made in the arrangement, operation and details of the method and apparatus disclosed herein without departing from the spirit and scope defined in the 

1. A computer-implemented method for publishing a learning application in a modular learning system, the method comprising steps of: receiving a learning application authoring request from a user device operated by an authoring user; validating authoring user credentials of the authoring user based on attributes associated with the authoring user in an authoring user database; providing a content editing interface for display to the authoring user; accessing a learning application template in a learning application template database and including a template in the content editing interface; storing the learning application including content metadata received from the user device, the learning application conforming to the learning application template and a content metadata describing parameters for performance of the learning application; receiving a publishing request from learning application authoring user; determining an approval status of the learning application; and publishing the learning application to a learning user marketplace or learning user library.
 2. The computer-implemented method of claim 1, further comprising providing an update notification to the user device wherein the update notification is generated at intervals requested by the authoring user, by a translation received from a translating user, by a certification received from a certifying user, responsive to new media added to the external source; by a learning user performing the learning application and by a tutoring user monitoring a performance of the learning application.
 3. The computer-implemented method of claim 1, wherein the learning application includes additional metadata, and the approval status is determined based on consistency between the content metadata and the additional metadata.
 4. A non-transitory computer-readable storage medium having tangibly embodied thereon a program of instructions executable by a processor, instructions causing a processor to execute steps of: receiving a learning application authoring request from a user device operated by an authoring user; validating authoring user credentials of the authoring user based on attributes associated with the authoring user in an authoring user database; providing a content editing interface for display to the authoring user; accessing a learning application template in a learning application template database and including a template in the content editing interface; storing a learning application including content metadata received from the user device, the learning application conforming to the learning application template and content metadata describing parameters for performance of the learning application; receiving a publishing request from learning application authoring user; determining an approval status of the learning application; and publishing the learning application to a learning user marketplace or learning user library.
 5. The non-transitory computer-readable storage medium of claim 4, further comprising providing an update notification to the user device wherein the update notification is generated at intervals requested by the authoring user, by a translation received from a translating user, by a certification received from a certifying user, responsive to new media added to the external source, by a learning user performing the learning application and by a tutoring user monitoring a performance of the learning application.
 6. The computer-readable storage medium of claim 4, wherein the learning application includes additional metadata, and the approval status is determined based in part on consistency between the content metadata and the additional metadata.
 7. An apparatus comprising: a network interface; a processor coupled to the network interface; a memory coupled to the processor, wherein a plurality of instructions for execution on the processor enabling the processor to execute the steps of: receiving a learning application authoring request from a user device operated by an authoring user; validating authoring user credentials of the authoring user based on attributes associated with the authoring user in an authoring user database; providing a content editing interface for display to the authoring user; accessing a learning application template in a learning application template database and including the template in the content editing interface; storing a learning application including content metadata received from the user device, the learning application conforming to the learning application template and content metadata describing parameters for performance of the learning application; receiving a publishing request from learning application authoring user; determining an approval status of the learning application; and publishing the learning application to a learning user marketplace or learning user library
 8. The apparatus of claim 7, wherein the processor is further adapted for providing an update notification to the user device wherein the update notification is generated at intervals requested by the authoring user, the update notification is generated by a certification received from a certifying user, responsive to new media added to the external source, by a learning user performing the learning application and by a tutoring user monitoring a performance of the learning application.
 9. The apparatus of claim 7, wherein the learning application includes additional metadata, and approval status is determined based in part on consistency between the content metadata and additional metadata. 10-27. (canceled) 